{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Using TensorFlow backend.\n"
     ]
    }
   ],
   "source": [
    "from keras.datasets import cifar10\n",
    "from keras.preprocessing.image import ImageDataGenerator\n",
    "from keras.models import Sequential, load_model, Model\n",
    "from keras.layers import Input, Dense, Dropout, Activation, Flatten\n",
    "from keras.layers import Convolution2D, MaxPooling2D\n",
    "from keras.layers.noise import GaussianNoise\n",
    "from keras.layers.normalization import BatchNormalization\n",
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "import time, pickle\n",
    "from keras.utils import to_categorical"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 输入数据"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "nb_classes = 10\n",
    "class_name = {\n",
    "    0: 'airplane',\n",
    "    1: 'automobile',\n",
    "    2: 'bird',\n",
    "    3: 'cat',\n",
    "    4: 'deer',\n",
    "    5: 'dog',\n",
    "    6: 'frog',\n",
    "    7: 'horse',\n",
    "    8: 'ship',\n",
    "    9: 'truck',\n",
    "}"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "(X_train, y_train), (X_test, y_test) = cifar10.load_data()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "X_train shape: (50000, 32, 32, 3)\n",
      "50000 training samples\n",
      "10000 validation samples\n"
     ]
    }
   ],
   "source": [
    "y_train = y_train.reshape(y_train.shape[0])\n",
    "y_test = y_test.reshape(y_test.shape[0])\n",
    "\n",
    "print('X_train shape:', X_train.shape)\n",
    "print(X_train.shape[0], 'training samples')\n",
    "print(X_test.shape[0], 'validation samples')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 标准化"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "X_train = X_train.astype('float32')\n",
    "X_test = X_test.astype('float32')\n",
    "X_train /= 255\n",
    "X_test /= 255"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 分类"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "y_train = to_categorical(y_train, nb_classes)\n",
    "y_test = to_categorical(y_test, nb_classes)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# 模型"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "x = Input(shape=(32, 32, 3))\n",
    "y = x\n",
    "y = Convolution2D(filters=64, kernel_size=3, strides=1, padding='same', activation='relu', kernel_initializer='he_normal')(y)\n",
    "y = Convolution2D(filters=64, kernel_size=3, strides=1, padding='same', activation='relu', kernel_initializer='he_normal')(y)\n",
    "y = MaxPooling2D(pool_size=2, strides=2, padding='valid')(y)\n",
    "\n",
    "y = Convolution2D(filters=128, kernel_size=3, strides=1, padding='same', activation='relu', kernel_initializer='he_normal')(y)\n",
    "y = Convolution2D(filters=128, kernel_size=3, strides=1, padding='same', activation='relu', kernel_initializer='he_normal')(y)\n",
    "y = MaxPooling2D(pool_size=2, strides=2, padding='valid')(y)\n",
    "\n",
    "y = Convolution2D(filters=256, kernel_size=3, strides=1, padding='same', activation='relu', kernel_initializer='he_normal')(y)\n",
    "y = Convolution2D(filters=256, kernel_size=3, strides=1, padding='same', activation='relu', kernel_initializer='he_normal')(y)\n",
    "y = MaxPooling2D(pool_size=2, strides=2, padding='valid')(y)\n",
    "\n",
    "y = Flatten()(y)\n",
    "y = Dense(units=128, activation='relu', kernel_initializer='he_normal')(y)\n",
    "y = Dropout(0.5)(y)\n",
    "y = Dense(units=nb_classes, activation='softmax', kernel_initializer='he_normal')(y)\n",
    "\n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "_________________________________________________________________\n",
      "Layer (type)                 Output Shape              Param #   \n",
      "=================================================================\n",
      "input_1 (InputLayer)         (None, 32, 32, 3)         0         \n",
      "_________________________________________________________________\n",
      "conv2d_1 (Conv2D)            (None, 32, 32, 64)        1792      \n",
      "_________________________________________________________________\n",
      "conv2d_2 (Conv2D)            (None, 32, 32, 64)        36928     \n",
      "_________________________________________________________________\n",
      "max_pooling2d_1 (MaxPooling2 (None, 16, 16, 64)        0         \n",
      "_________________________________________________________________\n",
      "conv2d_3 (Conv2D)            (None, 16, 16, 128)       73856     \n",
      "_________________________________________________________________\n",
      "conv2d_4 (Conv2D)            (None, 16, 16, 128)       147584    \n",
      "_________________________________________________________________\n",
      "max_pooling2d_2 (MaxPooling2 (None, 8, 8, 128)         0         \n",
      "_________________________________________________________________\n",
      "conv2d_5 (Conv2D)            (None, 8, 8, 256)         295168    \n",
      "_________________________________________________________________\n",
      "conv2d_6 (Conv2D)            (None, 8, 8, 256)         590080    \n",
      "_________________________________________________________________\n",
      "max_pooling2d_3 (MaxPooling2 (None, 4, 4, 256)         0         \n",
      "_________________________________________________________________\n",
      "flatten_1 (Flatten)          (None, 4096)              0         \n",
      "_________________________________________________________________\n",
      "dense_1 (Dense)              (None, 128)               524416    \n",
      "_________________________________________________________________\n",
      "dropout_1 (Dropout)          (None, 128)               0         \n",
      "_________________________________________________________________\n",
      "dense_2 (Dense)              (None, 10)                1290      \n",
      "=================================================================\n",
      "Total params: 1,671,114\n",
      "Trainable params: 1,671,114\n",
      "Non-trainable params: 0\n",
      "_________________________________________________________________\n"
     ]
    }
   ],
   "source": [
    "# SGD (Stochastic Gradient Descent)\n",
    "# lrate = 0.01\n",
    "# decay = lrate / nb_epoch\n",
    "# sgd = SGD(lr=lrate, momentum=0.9, decay=decay, nesterov=False)\n",
    "model = Model(inputs=x, outputs=y, name='model')\n",
    "\n",
    "model.compile(loss='categorical_crossentropy', optimizer='adadelta', metrics=['accuracy'])\n",
    "\n",
    "model.summary()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Train on 50000 samples, validate on 10000 samples\n",
      "Epoch 1/100\n",
      "28928/50000 [================>.............] - ETA: 4s - loss: 2.2730 - acc: 0.1544"
     ]
    },
    {
     "ename": "KeyboardInterrupt",
     "evalue": "",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mKeyboardInterrupt\u001b[0m                         Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-9-835c9fa2ef78>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m()\u001b[0m\n\u001b[1;32m      2\u001b[0m \u001b[0mbatch_size\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;36m256\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      3\u001b[0m \u001b[0mstart\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mtime\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtime\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 4\u001b[0;31m \u001b[0mh\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mmodel\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfit\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mX_train\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0my_train\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mbatch_size\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mbatch_size\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mepochs\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mnb_epoch\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mvalidation_data\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mX_test\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my_test\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mshuffle\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;32mTrue\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m      5\u001b[0m \u001b[0mmodel1\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msave\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'CIFAR10_vggS.h5'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      6\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'@ Total Time Spent: %.2f seconds'\u001b[0m \u001b[0;34m%\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mtime\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtime\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m-\u001b[0m \u001b[0mstart\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/anaconda3/lib/python3.6/site-packages/keras/engine/training.py\u001b[0m in \u001b[0;36mfit\u001b[0;34m(self, x, y, batch_size, epochs, verbose, callbacks, validation_split, validation_data, shuffle, class_weight, sample_weight, initial_epoch, steps_per_epoch, validation_steps, **kwargs)\u001b[0m\n\u001b[1;32m   1037\u001b[0m                                         \u001b[0minitial_epoch\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0minitial_epoch\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   1038\u001b[0m                                         \u001b[0msteps_per_epoch\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0msteps_per_epoch\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1039\u001b[0;31m                                         validation_steps=validation_steps)\n\u001b[0m\u001b[1;32m   1040\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   1041\u001b[0m     def evaluate(self, x=None, y=None,\n",
      "\u001b[0;32m~/anaconda3/lib/python3.6/site-packages/keras/engine/training_arrays.py\u001b[0m in \u001b[0;36mfit_loop\u001b[0;34m(model, f, ins, out_labels, batch_size, epochs, verbose, callbacks, val_f, val_ins, shuffle, callback_metrics, initial_epoch, steps_per_epoch, validation_steps)\u001b[0m\n\u001b[1;32m    197\u001b[0m                     \u001b[0mins_batch\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mins_batch\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtoarray\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    198\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m--> 199\u001b[0;31m                 \u001b[0mouts\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mf\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mins_batch\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m    200\u001b[0m                 \u001b[0mouts\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mto_list\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mouts\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m    201\u001b[0m                 \u001b[0;32mfor\u001b[0m \u001b[0ml\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mo\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mzip\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mout_labels\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mouts\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/anaconda3/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, inputs)\u001b[0m\n\u001b[1;32m   2713\u001b[0m                 \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_legacy_call\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0minputs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   2714\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2715\u001b[0;31m             \u001b[0;32mreturn\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_call\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0minputs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m   2716\u001b[0m         \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   2717\u001b[0m             \u001b[0;32mif\u001b[0m \u001b[0mpy_any\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mis_tensor\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mx\u001b[0m \u001b[0;32min\u001b[0m \u001b[0minputs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/anaconda3/lib/python3.6/site-packages/keras/backend/tensorflow_backend.py\u001b[0m in \u001b[0;36m_call\u001b[0;34m(self, inputs)\u001b[0m\n\u001b[1;32m   2673\u001b[0m             \u001b[0mfetched\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_callable_fn\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0marray_vals\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mrun_metadata\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrun_metadata\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   2674\u001b[0m         \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 2675\u001b[0;31m             \u001b[0mfetched\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_callable_fn\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m*\u001b[0m\u001b[0marray_vals\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m   2676\u001b[0m         \u001b[0;32mreturn\u001b[0m \u001b[0mfetched\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0mlen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0moutputs\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   2677\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;32m~/anaconda3/lib/python3.6/site-packages/tensorflow/python/client/session.py\u001b[0m in \u001b[0;36m__call__\u001b[0;34m(self, *args)\u001b[0m\n\u001b[1;32m   1449\u001b[0m         \u001b[0;32mif\u001b[0m \u001b[0mself\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_session\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0m_created_with_new_api\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   1450\u001b[0m           return tf_session.TF_SessionRunCallable(\n\u001b[0;32m-> 1451\u001b[0;31m               self._session._session, self._handle, args, status, None)\n\u001b[0m\u001b[1;32m   1452\u001b[0m         \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m   1453\u001b[0m           return tf_session.TF_DeprecatedSessionRunCallable(\n",
      "\u001b[0;31mKeyboardInterrupt\u001b[0m: "
     ]
    }
   ],
   "source": [
    "nb_epoch = 100\n",
    "batch_size = 256\n",
    "start = time.time()\n",
    "h = model.fit(x=X_train, y=y_train, batch_size=batch_size, epochs=nb_epoch, validation_data=(X_test, y_test), shuffle=True)\n",
    "model1.save('CIFAR10_vgg.h5')\n",
    "print('@ Total Time Spent: %.2f seconds' % (time.time() - start))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Training Accuracy = 91.71 %     loss = 0.271496\n",
      "Testing Accuracy = 76.79 %    loss = 0.733290\n"
     ]
    }
   ],
   "source": [
    "loss, accuracy = model1.evaluate(X_train, y_train, verbose=0)\n",
    "print(\"Training Accuracy = %.2f %%     loss = %f\" % (accuracy * 100, loss))\n",
    "loss, accuracy = model1.evaluate(X_test, y_test, verbose=0)\n",
    "print(\"Testing Accuracy = %.2f %%    loss = %f\" % (accuracy * 100, loss))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1080x360 with 2 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "def plot_acc_loss(h, nb_epoch):\n",
    "    acc, loss, val_acc, val_loss = h.history['acc'], h.history['loss'], h.history['val_acc'], h.history['val_loss']\n",
    "    plt.figure(figsize=(15, 5))\n",
    "    plt.subplot(121)\n",
    "    plt.plot(range(nb_epoch), acc, label='Train')\n",
    "    plt.plot(range(nb_epoch), val_acc, label='Test')\n",
    "    plt.title('Accuracy over ' + str(nb_epoch) + ' Epochs', size=15)\n",
    "    plt.legend()\n",
    "    plt.grid(True)\n",
    "    plt.subplot(122)\n",
    "    plt.plot(range(nb_epoch), loss, label='Train')\n",
    "    plt.plot(range(nb_epoch), val_loss, label='Test')\n",
    "    plt.title('Loss over ' + str(nb_epoch) + ' Epochs', size=15)\n",
    "    plt.legend()\n",
    "    plt.grid(True)\n",
    "    plt.show()\n",
    "    \n",
    "plot_acc_loss(h, nb_epoch)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python [conda root]",
   "language": "python",
   "name": "conda-root-py"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.2"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
